//导入express包
var express = require('express');
//导入内置模块path
var path = require('path');
//导入第三方模块(解析cookie)
var cookieParser = require('cookie-parser');
//导入第三方模块(记录日志)
var logger = require('morgan');

//导入跨域请求的模块
const cors=require('cors');

//导入路由对象(模块化路由)
var indexRouter = require('./routes/index');
var usersRouter=require('./routes/ggusers')
var eventRouter = require('./routes/ggevent')
var noticeRouter = require('./routes/ggnotice')
var trafficRouter = require('./routes/ggtraffic')
//导入token路由模块
const tokenRouter = require('./routes/token')

//实例化express对象
var app = express();

//注册记录日志中间件morgan
app.use(logger('dev'));
//注册解析请求体中间件(处理json格式的请求体)
app.use(express.json());
//注册解析请求体中间件(处理url格式的请求体)
//extended: false表示使用系统模块queryString来处理,true表示使用第三方模块qs来处理
app.use(express.urlencoded({ extended: false }));
//注册解析cookie数据的中间件
app.use(cookieParser());
//注册解析静态资源的中间件
app.use(express.static(path.join(__dirname, 'public')));

/* 注册跨域请求的中间件 */
app.use(cors())

//注册路由对象(根据不同的访问路径,调用不同的路由对象进行处理)
app.use('/', indexRouter);
app.use('/ggusers', usersRouter);
app.use('/ggevent',eventRouter)
app.use('/ggnotice',noticeRouter)
app.use('/ggtraffic',trafficRouter)
app.use('/token', tokenRouter)
//导出
module.exports = app;
